curl --request POST \
--url https://api-lr.agent.ai/v1/action/meeting_prep_v3_assemble_meeting_document \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"section_overview": "{{meeting_sections.sections.overview}}",
"section_attendees": "{{meeting_sections.sections.attendees}}",
"section_company": "{{meeting_sections.sections.company}}",
"output_variable_name": "assembled_document",
"section_situation": "{{meeting_sections.sections.situation}}",
"section_segues": "{{meeting_sections.sections.segues}}",
"section_questions": "{{meeting_sections.sections.questions}}",
"section_next_step": "{{meeting_sections.sections.next_step}}",
"section_strategy": "{{meeting_sections.sections.strategy}}",
"section_goals": "{{meeting_sections.sections.goals}}",
"processed_gcal_event": "{{processed_gcal_event}}",
"user_first_name": "{{user.context.first_name}}"
}
'import requests
url = "https://api-lr.agent.ai/v1/action/meeting_prep_v3_assemble_meeting_document"
payload = {
"section_overview": "{{meeting_sections.sections.overview}}",
"section_attendees": "{{meeting_sections.sections.attendees}}",
"section_company": "{{meeting_sections.sections.company}}",
"output_variable_name": "assembled_document",
"section_situation": "{{meeting_sections.sections.situation}}",
"section_segues": "{{meeting_sections.sections.segues}}",
"section_questions": "{{meeting_sections.sections.questions}}",
"section_next_step": "{{meeting_sections.sections.next_step}}",
"section_strategy": "{{meeting_sections.sections.strategy}}",
"section_goals": "{{meeting_sections.sections.goals}}",
"processed_gcal_event": "{{processed_gcal_event}}",
"user_first_name": "{{user.context.first_name}}"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
section_overview: '{{meeting_sections.sections.overview}}',
section_attendees: '{{meeting_sections.sections.attendees}}',
section_company: '{{meeting_sections.sections.company}}',
output_variable_name: 'assembled_document',
section_situation: '{{meeting_sections.sections.situation}}',
section_segues: '{{meeting_sections.sections.segues}}',
section_questions: '{{meeting_sections.sections.questions}}',
section_next_step: '{{meeting_sections.sections.next_step}}',
section_strategy: '{{meeting_sections.sections.strategy}}',
section_goals: '{{meeting_sections.sections.goals}}',
processed_gcal_event: '{{processed_gcal_event}}',
user_first_name: '{{user.context.first_name}}'
})
};
fetch('https://api-lr.agent.ai/v1/action/meeting_prep_v3_assemble_meeting_document', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api-lr.agent.ai/v1/action/meeting_prep_v3_assemble_meeting_document",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'section_overview' => '{{meeting_sections.sections.overview}}',
'section_attendees' => '{{meeting_sections.sections.attendees}}',
'section_company' => '{{meeting_sections.sections.company}}',
'output_variable_name' => 'assembled_document',
'section_situation' => '{{meeting_sections.sections.situation}}',
'section_segues' => '{{meeting_sections.sections.segues}}',
'section_questions' => '{{meeting_sections.sections.questions}}',
'section_next_step' => '{{meeting_sections.sections.next_step}}',
'section_strategy' => '{{meeting_sections.sections.strategy}}',
'section_goals' => '{{meeting_sections.sections.goals}}',
'processed_gcal_event' => '{{processed_gcal_event}}',
'user_first_name' => '{{user.context.first_name}}'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api-lr.agent.ai/v1/action/meeting_prep_v3_assemble_meeting_document"
payload := strings.NewReader("{\n \"section_overview\": \"{{meeting_sections.sections.overview}}\",\n \"section_attendees\": \"{{meeting_sections.sections.attendees}}\",\n \"section_company\": \"{{meeting_sections.sections.company}}\",\n \"output_variable_name\": \"assembled_document\",\n \"section_situation\": \"{{meeting_sections.sections.situation}}\",\n \"section_segues\": \"{{meeting_sections.sections.segues}}\",\n \"section_questions\": \"{{meeting_sections.sections.questions}}\",\n \"section_next_step\": \"{{meeting_sections.sections.next_step}}\",\n \"section_strategy\": \"{{meeting_sections.sections.strategy}}\",\n \"section_goals\": \"{{meeting_sections.sections.goals}}\",\n \"processed_gcal_event\": \"{{processed_gcal_event}}\",\n \"user_first_name\": \"{{user.context.first_name}}\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api-lr.agent.ai/v1/action/meeting_prep_v3_assemble_meeting_document")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"section_overview\": \"{{meeting_sections.sections.overview}}\",\n \"section_attendees\": \"{{meeting_sections.sections.attendees}}\",\n \"section_company\": \"{{meeting_sections.sections.company}}\",\n \"output_variable_name\": \"assembled_document\",\n \"section_situation\": \"{{meeting_sections.sections.situation}}\",\n \"section_segues\": \"{{meeting_sections.sections.segues}}\",\n \"section_questions\": \"{{meeting_sections.sections.questions}}\",\n \"section_next_step\": \"{{meeting_sections.sections.next_step}}\",\n \"section_strategy\": \"{{meeting_sections.sections.strategy}}\",\n \"section_goals\": \"{{meeting_sections.sections.goals}}\",\n \"processed_gcal_event\": \"{{processed_gcal_event}}\",\n \"user_first_name\": \"{{user.context.first_name}}\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-lr.agent.ai/v1/action/meeting_prep_v3_assemble_meeting_document")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"section_overview\": \"{{meeting_sections.sections.overview}}\",\n \"section_attendees\": \"{{meeting_sections.sections.attendees}}\",\n \"section_company\": \"{{meeting_sections.sections.company}}\",\n \"output_variable_name\": \"assembled_document\",\n \"section_situation\": \"{{meeting_sections.sections.situation}}\",\n \"section_segues\": \"{{meeting_sections.sections.segues}}\",\n \"section_questions\": \"{{meeting_sections.sections.questions}}\",\n \"section_next_step\": \"{{meeting_sections.sections.next_step}}\",\n \"section_strategy\": \"{{meeting_sections.sections.strategy}}\",\n \"section_goals\": \"{{meeting_sections.sections.goals}}\",\n \"processed_gcal_event\": \"{{processed_gcal_event}}\",\n \"user_first_name\": \"{{user.context.first_name}}\"\n}"
response = http.request(request)
puts response.read_body{
"status": 123,
"response": {}
}{
"status": 123,
"response": {}
}{
"status": 123,
"response": {}
}{
"status": 123,
"response": {}
}[P7] V3 Assemble Meeting Document
V3: Assembles all sections (V3 + V2) into unified document. Handles situation, segues, questions, next_step alongside legacy strategy/goals.
curl --request POST \
--url https://api-lr.agent.ai/v1/action/meeting_prep_v3_assemble_meeting_document \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"section_overview": "{{meeting_sections.sections.overview}}",
"section_attendees": "{{meeting_sections.sections.attendees}}",
"section_company": "{{meeting_sections.sections.company}}",
"output_variable_name": "assembled_document",
"section_situation": "{{meeting_sections.sections.situation}}",
"section_segues": "{{meeting_sections.sections.segues}}",
"section_questions": "{{meeting_sections.sections.questions}}",
"section_next_step": "{{meeting_sections.sections.next_step}}",
"section_strategy": "{{meeting_sections.sections.strategy}}",
"section_goals": "{{meeting_sections.sections.goals}}",
"processed_gcal_event": "{{processed_gcal_event}}",
"user_first_name": "{{user.context.first_name}}"
}
'import requests
url = "https://api-lr.agent.ai/v1/action/meeting_prep_v3_assemble_meeting_document"
payload = {
"section_overview": "{{meeting_sections.sections.overview}}",
"section_attendees": "{{meeting_sections.sections.attendees}}",
"section_company": "{{meeting_sections.sections.company}}",
"output_variable_name": "assembled_document",
"section_situation": "{{meeting_sections.sections.situation}}",
"section_segues": "{{meeting_sections.sections.segues}}",
"section_questions": "{{meeting_sections.sections.questions}}",
"section_next_step": "{{meeting_sections.sections.next_step}}",
"section_strategy": "{{meeting_sections.sections.strategy}}",
"section_goals": "{{meeting_sections.sections.goals}}",
"processed_gcal_event": "{{processed_gcal_event}}",
"user_first_name": "{{user.context.first_name}}"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
section_overview: '{{meeting_sections.sections.overview}}',
section_attendees: '{{meeting_sections.sections.attendees}}',
section_company: '{{meeting_sections.sections.company}}',
output_variable_name: 'assembled_document',
section_situation: '{{meeting_sections.sections.situation}}',
section_segues: '{{meeting_sections.sections.segues}}',
section_questions: '{{meeting_sections.sections.questions}}',
section_next_step: '{{meeting_sections.sections.next_step}}',
section_strategy: '{{meeting_sections.sections.strategy}}',
section_goals: '{{meeting_sections.sections.goals}}',
processed_gcal_event: '{{processed_gcal_event}}',
user_first_name: '{{user.context.first_name}}'
})
};
fetch('https://api-lr.agent.ai/v1/action/meeting_prep_v3_assemble_meeting_document', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api-lr.agent.ai/v1/action/meeting_prep_v3_assemble_meeting_document",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'section_overview' => '{{meeting_sections.sections.overview}}',
'section_attendees' => '{{meeting_sections.sections.attendees}}',
'section_company' => '{{meeting_sections.sections.company}}',
'output_variable_name' => 'assembled_document',
'section_situation' => '{{meeting_sections.sections.situation}}',
'section_segues' => '{{meeting_sections.sections.segues}}',
'section_questions' => '{{meeting_sections.sections.questions}}',
'section_next_step' => '{{meeting_sections.sections.next_step}}',
'section_strategy' => '{{meeting_sections.sections.strategy}}',
'section_goals' => '{{meeting_sections.sections.goals}}',
'processed_gcal_event' => '{{processed_gcal_event}}',
'user_first_name' => '{{user.context.first_name}}'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api-lr.agent.ai/v1/action/meeting_prep_v3_assemble_meeting_document"
payload := strings.NewReader("{\n \"section_overview\": \"{{meeting_sections.sections.overview}}\",\n \"section_attendees\": \"{{meeting_sections.sections.attendees}}\",\n \"section_company\": \"{{meeting_sections.sections.company}}\",\n \"output_variable_name\": \"assembled_document\",\n \"section_situation\": \"{{meeting_sections.sections.situation}}\",\n \"section_segues\": \"{{meeting_sections.sections.segues}}\",\n \"section_questions\": \"{{meeting_sections.sections.questions}}\",\n \"section_next_step\": \"{{meeting_sections.sections.next_step}}\",\n \"section_strategy\": \"{{meeting_sections.sections.strategy}}\",\n \"section_goals\": \"{{meeting_sections.sections.goals}}\",\n \"processed_gcal_event\": \"{{processed_gcal_event}}\",\n \"user_first_name\": \"{{user.context.first_name}}\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api-lr.agent.ai/v1/action/meeting_prep_v3_assemble_meeting_document")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"section_overview\": \"{{meeting_sections.sections.overview}}\",\n \"section_attendees\": \"{{meeting_sections.sections.attendees}}\",\n \"section_company\": \"{{meeting_sections.sections.company}}\",\n \"output_variable_name\": \"assembled_document\",\n \"section_situation\": \"{{meeting_sections.sections.situation}}\",\n \"section_segues\": \"{{meeting_sections.sections.segues}}\",\n \"section_questions\": \"{{meeting_sections.sections.questions}}\",\n \"section_next_step\": \"{{meeting_sections.sections.next_step}}\",\n \"section_strategy\": \"{{meeting_sections.sections.strategy}}\",\n \"section_goals\": \"{{meeting_sections.sections.goals}}\",\n \"processed_gcal_event\": \"{{processed_gcal_event}}\",\n \"user_first_name\": \"{{user.context.first_name}}\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-lr.agent.ai/v1/action/meeting_prep_v3_assemble_meeting_document")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"section_overview\": \"{{meeting_sections.sections.overview}}\",\n \"section_attendees\": \"{{meeting_sections.sections.attendees}}\",\n \"section_company\": \"{{meeting_sections.sections.company}}\",\n \"output_variable_name\": \"assembled_document\",\n \"section_situation\": \"{{meeting_sections.sections.situation}}\",\n \"section_segues\": \"{{meeting_sections.sections.segues}}\",\n \"section_questions\": \"{{meeting_sections.sections.questions}}\",\n \"section_next_step\": \"{{meeting_sections.sections.next_step}}\",\n \"section_strategy\": \"{{meeting_sections.sections.strategy}}\",\n \"section_goals\": \"{{meeting_sections.sections.goals}}\",\n \"processed_gcal_event\": \"{{processed_gcal_event}}\",\n \"user_first_name\": \"{{user.context.first_name}}\"\n}"
response = http.request(request)
puts response.read_body{
"status": 123,
"response": {}
}{
"status": 123,
"response": {}
}{
"status": 123,
"response": {}
}{
"status": 123,
"response": {}
}Authorizations
Bearer token from your account (https://agent.ai/user/integrations#api)
Body
Overview section from GenerateMeetingSections.
Attendees section from GenerateMeetingSections.
Company section from GenerateMeetingSections.
Variable name to store assembled document.
^[a-zA-Z][a-zA-Z0-9_]*$V3: Situation section (facts, hypotheses, landmines).
V3: Segues section (scripts, ties_to, moment, evidence).
V3: Questions section (discovery, likely_questions).
V3: Next Step section (ask, two_option_close, quick_wins, logistics).
V2 legacy: Strategy section (what_to_know + questions).
V2 legacy: Goals section (success + final_check + summary + closing).
Processed calendar event for conference link extraction.
User's first name for personalization.

